home *** CD-ROM | disk | FTP | other *** search
/ X User Tools / X User Tools (O'Reilly and Associates)(1994).ISO / sun4c / archive / tcltk.z / tcltk / man / cat3 / ManageGeom.3 < prev    next >
Text File  |  1994-09-20  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. Tk_ManageGeometry(3)  Tk Library Procedures
  5.  
  6.  
  7.  
  8. _________________________________________________________________
  9.  
  10. NAME
  11.      Tk_ManageGeometry - arrange to handle geometry requests  for
  12.      a window
  13.  
  14. SYNOPSIS
  15.      #include <tk.h>
  16.  
  17.      Tk_ManageGeometry(_t_k_w_i_n, _p_r_o_c, _c_l_i_e_n_t_D_a_t_a)
  18.  
  19. ARGUMENTS
  20.      Tk_Window         _t_k_w_i_n        (in)      Token for window to
  21.                                               be managed.
  22.  
  23.      Tk_GeometryProc   *_p_r_o_c        (in)      Procedure to invoke
  24.                                               to  handle geometry
  25.                                               requests on  _t_k_w_i_n,
  26.                                               or NULL to indicate
  27.                                               that        _t_k_w_i_n's
  28.                                               geometry  shouldn't
  29.                                               be managed anymore.
  30.  
  31.      ClientData        _c_l_i_e_n_t_D_a_t_a   (in)      Arbitrary  one-word
  32.                                               value  to  pass  to
  33.                                               _p_r_o_c.
  34. _________________________________________________________________
  35.  
  36.  
  37. DESCRIPTION
  38.      Tk_ManageGeometry arranges for _p_r_o_c to be  invoked  whenever
  39.      Tk_GeometryRequest  is called to change the desired geometry
  40.      for  _t_k_w_i_n.   Tk_ManageGeometry  is  typically  invoked   by
  41.      geometry  managers  when  they  take  control  of a window's
  42.      geometry.
  43.  
  44.      _P_r_o_c should have arguments and results that match  the  type
  45.      Tk_GeometryProc:
  46.           typedef void Tk_GeometryProc(
  47.                ClientData _c_l_i_e_n_t_D_a_t_a,
  48.                Tk_Window _t_k_w_i_n);
  49.      The parameters to _p_r_o_c will be identical to the  correspond-
  50.      ing  parameters  passed  to  Tk_ManageGeometry.   Typically,
  51.      _c_l_i_e_n_t_D_a_t_a   points   to   a   data   structure   containing
  52.      application-specific information about how to manage _t_k_w_i_n's
  53.      geometry.
  54.  
  55.      _P_r_o_c will be called during each call  to  Tk_GeometryRequest
  56.      for _t_k_w_i_n.  _P_r_o_c can use macros like Tk_ReqWidth to retrieve
  57.      the arguments passed to Tk_GeometryRequest.   It  should  do
  58.      what it can to meet the request, subject to the space avail-
  59.      able in _t_k_w_i_n's parent and its  own  policies  for  managing
  60.  
  61.  
  62.  
  63. Tk                                                              1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. Tk_ManageGeometry(3)  Tk Library Procedures
  71.  
  72.  
  73.  
  74.      geometry.  If _p_r_o_c can meet the request, it should call pro-
  75.      cedures like Tk_ResizeWindow or Tk_MoveWindow to  carry  out
  76.      the actual geometry change.  In some cases it may make sense
  77.      for _p_r_o_c not to process the  geometry  request  immediately,
  78.      but  rather  to  schedule  a procedure to do it later, using
  79.      Tk_DoWhenIdle.  This approach is likely to be more efficient
  80.      in  situations  where several geometry requests occur simul-
  81.      taneously:  only a single  geometry  change  will  be  made,
  82.      after all the requests have been registered.
  83.  
  84.      If _p_r_o_c is specified as NULL, then the geometry handler  for
  85.      _t_k_w_i_n will be eliminated, leaving _t_k_w_i_n unmanaged.  Calls to
  86.      Tk_GeometryRequest have  no  effect  for  unmanaged  windows
  87.      except to store the requested size in a structure where they
  88.      can  be  retrieved   by   macros   like   Tk_ReqWidth.    If
  89.      Tk_GeometryRequest  has never been invoked for a window then
  90.      it is unmanaged.
  91.  
  92.  
  93. KEYWORDS
  94.      callback, geometry, managed, request, unmanaged
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129. Tk                                                              2
  130.  
  131.  
  132.  
  133.